package com.hw.esay.myExam;

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;

//简单密码
/**
 * 规定这样一种密码的变换方法：对于密码中的小写字母，参考九键手机键盘，将它们映射为对应的数字，具体地，
 * abc 对应数字2 、def 对应数字4 对于密码中的大写字母，先将其转换为小写，然后向后移动一位，即
 * Z 转换为a ，A 转换为b对于密码中的数字，保持不变。现在，请你将给定的密码按照上述规则进行变换。
 */
public class HJ21 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        Map<String,String> map = new HashMap<>();
        map.put("0","0");
        map.put("1","1");
        map.put("abc","2");
        map.put("def","3");
        map.put("ghi","4");
        map.put("jkl","5");
        map.put("mno","6");
        map.put("pqrs","7");
        map.put("tuv","8");
        map.put("wxyz","9");
        while(scan.hasNext()){
            String str = scan.nextLine();
            char[] charStr = str.toCharArray();
            StringBuffer strBuf = new StringBuffer();
            for (char c : charStr) {
                if(c>='0' && c<='9'){
                    strBuf.append(c);
                }else if(c>='A' && c<='Y'){
                    char newChar = (char)(c+32+1);
                    strBuf.append(String.valueOf(newChar));
                }else if(c=='Z'){
                    strBuf.append("a");
                }else{
                    Set<String> set = map.keySet();
                    for (String s : set) {
                        if(s.contains(String.valueOf(c))){
                            strBuf.append(map.get(s));
                        }
                    }
                }
            }
            System.out.println(strBuf);

        }
    }
}
